//
//  SSBaseViewController.swift
//  SSSina
//
//  Created by ss on 2017/6/29.
//  Copyright © 2017年 ss. All rights reserved.
//

import UIKit

/*
   新浪微博一共有两个状态
   - 一个需要标识-> bool ->true or false
   - 登陆状态
   - 访客状态
 
 
 有一个循环引用
 
  - visitroView -> 闭包
  - 闭包 -> VC
  - VC -> visitorView
 */

class SSBaseViewController: UIViewController {

    //判断是否登陆
    let isLogin:Bool = SSOAuthViewModel.share.isLogin
    //全局访客视图View
    var visitorView:SSVisitouView?
    
    override func loadView() {
        //判断用户是否登陆
        if !isLogin {
            setupVisitorView()
        }else{
          view = tableView
        }
    }
    
    //监听事件
    @objc private func loginClick(){
//        print("监听登陆按钮点击事件")
        
        //创建oauth控制器
        let oauthVC = SSOAuthController()
        //把oauth控制器设置为导航控制器的根控制器
        let nav = SSNavigationController(rootViewController:oauthVC)
        //模态形式弹出控制器
        present (nav,animated: true,completion: nil)

    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        setupNav()
    
    }
    
    //设置访客视图
    private func setupVisitorView() {
        //实例化SSvisitorView
        visitorView = SSVisitouView()
        //02 实例化闭包
        visitorView?.closure = {[weak self] in
            //04执行闭包
            self?.loginClick()
        }
        view = visitorView
        setupNav()
    }

    //设置导航
    private func setupNav(){
        
        navigationItem.leftBarButtonItem = UIBarButtonItem(imgName: nil, title: "注册", target: self, action: #selector(loginClick))
        navigationItem.rightBarButtonItem = UIBarButtonItem(imgName: nil, title: "登陆", target: self, action: #selector(loginClick))
    }
    
    //列表
    lazy var tableView:UITableView = {
        let view = UITableView()
        return view
    }()
 


}
